For Animators. =================================== Evaluation settings. ---------------------- We designed this rig to execute as quickly as possible. To achieve this, you need to use a GPU and parallel evaluation, so you need to turn on those in the settings. Body Rig ------------------------- In very simplified form this is how body rig works .. image:: img/BodyRig_basics.jpg Root Components ++++++++++++++++++++++++++ *Contains four controllers:* * world_prim_cc - only for offsetting animation. Don't animate that. * world_sec_cc - The main rig controller. Use to move or scale the whole rig. * cog_prim_cc - Main Center of Gravity control. Has all visibility switches. * cog_sec_cc - Secondary Center of Gravity control. .. image:: img/RootCtrls.gif Body Chain ++++++++++++++++++++++++++ **Chain Settings :** * Arm, Leg, Finger, Spine, etc. - Are all Body Chains. Body chains can have components: IK, FK, Spline, JointControl * Chain has a shape node that is instanced under every controller. This Shape has FK/IK switch attribute and many other. .. image:: img/BodyChain_IKFKswitch.jpg **Rest Len Crv** Normal curve length. Don't touch that. Amimating that will trigger volume preservation(scaling) **Uniform Crv** Uniform / Non Uniform Curve ( parameter distribution along curve ) if set to 1, On stretching and shringking joints wont change their position relative to each other. **Start P Cr** Start Curve parameter. Animating that will slide chains start along it. **Mid P Crv** Middle curve parameter. Animating that will slide center of chain along it. **End P Crv** End Curve Parameter. Animating this will slide chains tip along it. **Stretch Crv** Toggles stretch on chain. If disabled, chains real length won't change. **Shrink Crv** Toggles Shrink on chain. If disabled, real chain length wont change. All "extra" length will be distributed along straight line pointing out of the last controller. **Mnt Vol Crv** Volume preservation control. FK Components ++++++++++++++++++++++++++ Forward kinematics chain controls. Every controller can be moved and rotated freely. Scales only in X axis(length. Doesnt affect real scale). Rotate Order attribute allows to change rotate order without going to attribute editor. The last FK controller can have a "Reverse" Attribute, which reverses chain's hierarchy. .. image:: img/FKMain.gif **Space Attributes** First FK controller has space switching attributes ( Follow * ) Tweak those attributes to switch space e.g. detach arm from clavicle. Space can be switched for translation and rotation separately. .. image:: img/FKSpace.gif IK Components ++++++++++++++++++++++++++ **Main Attributes** *Inverse kinematics component:* - Start and tip controls can be moved and rotated freely. - Second Controller is a pole vector. Move it to orient chain. - Third controller ( if chain has 4 ) is second a knee rotator. - Last controller is an ik effector. - IK chain can have a footroll controller. It is next to effector controller. Rotate it to control footroll. (*foot_l_footroll*) - Footroll has pivot controllers. Move those to chainge rotation pivots. (*foot_l_footroll_outer*) .. image:: img/IKMain.gif **Space Attributes** - All IK controllers have Space attributes ( Follow * ) - Tweak those attributes to switch space e.g. orient chain with start controller. .. image:: img/IKSpace.gif **Extra Attributes** **Soft IK** Anti knee pop. **Stretch** Stretch toggle. (Affects only IK chain. Spline under IK chain has its own stretch control.) **Max Stretch** Maximum stretch. Relative to normal chain length. **Tip Orient** Orients child chain to ik handle. E.g. foot to ik handle of leg. .. image:: img/IKExtra.gif Spline Components ++++++++++++++++++++++++++ **Main Attributes** - To enable spline controls turn them on in cog_prim_cc or in picker. - All spline controls can be moved , rotated and scaled freely. - Try to maintain orientation of chain (controls X axis should look roughly one direction and X twist difference should be less than 180 degrees between neighbour controls), or it can flip. .. image:: img/SplineMain.gif **Control Attributes** **Tgl** Attributes toggles controller. Controller will change it's shape and won't affect chain if set to *False*. **Back Tg Tgl** Attribute toggles controllers back tangent. It points to the previous controller. (tangents are just extra cv's of main curve. ) Enabling this will make bend in this area sharper. **Fwrd Tg Tgl** Attribute toggles controllers front tangent. **Tangent Len** Attribute controls length of tangents. The shorter they are the sharper bend is. Dont make them too long because previous tangent might intercect a next one and the chain will flip. **Tangent Aim** If equals 1 - tangents aim to neighbour controllers, if 0 – to +-X axis of the current controller. **Tgl Twist** If enabled, corresponding controller will control twist of the chain. ( Not working yet ) .. image:: img/SplineExtra.gif **Sine Attributes** Sine will offset chains joints in a sine wave shape. Pos will offset position. Wave will offset twist. **Mag Pos Sin** Position Sine wave Magnitude** **Off Pos Sin** Position Sine wave Offset** **Frq Pos Sin** Position Sine wave Frequency** **Mag Wave Sin** Twist Sine wave Magnitude** **Off Wave Sin** Twist Sine wave Offset** **Frq Wave Sin** Twist Sine wave Frequency Lattice Components ++++++++++++++++++++++++++ **Main Attributes** - To enable lattice controls turn them on in cog_prim_cc - Secondary(corners) lattice controllers can be moved freely. - Main controls(slices) can be moved , rotated and scaled freely. Face RIG ------------------------- Head Controls ++++++++++++++++++++++++++ These are used to bend face. They control the underlying lattice. * Can be moved, scaled and rotated freely. * Bend the whole face to exaggerate pose and/or give more organic look. * You can tweak these controls to sculpt a bit different face ( for quick secondary character or sth ) .. image:: img/HeadBend.gif Main Controls ++++++++++++++++++++++++++ These controls trigger the preset face expressions. - Move controls to trigger face expressions. - If you need to push pose a bit further, then tweak Min Limit or Max Limit attributes ( Note that it might look broken. ) .. image:: img/HeadMain.gif Part Controls ++++++++++++++++++++++++++ These controls are used to tweak full face parts( eye, mouth, ear etc. ) - Can be moved, rotated and scaled freely. .. image:: img/HeadParts.gif Secondary controls ++++++++++++++++++++++++++ These controls are used to manually tweak the face pose if other methods don’t work. - Can be moved, rotated and scaled freely. - If controls are hidden, they are controlled by other. F.E. lip area controls are driven by lip controls. But you can turn those on, if you need. Visibility controls are under faceroot_cc - Also these controls can be hidden for optimization purposes. Select other type of face controller and these will show up. Or use picker. - Cenral secondary control of each chain has a scale offset attribute. Tweak that to offset scale along the chain. (Chain should have scale enabled. Usuallyy lips and brows have that.) .. image:: img/HeadSecondary.gif Picker ------------------------ Installation ++++++++++++++++++++++++++ No installation needed. If picker does not appear automatically run npa_picker_run() command in your python command line. General ++++++++++++++++++++++++++ This is what the typical picker looks like : .. image:: img/PickerMain.jpg .. image:: img/PickerFace.jpg Different types of icons : ++++++++++++++++++++++++++ **COG** : the outer icon selects the main COG controller, the inner icon selects the secondary COG controller .. image:: img/PickerCOG.jpg **IK/FK** : squares represent FK controllers, circles represent IK .. image:: img/PickerIKFKIcon.jpg **Spline** : The spline pickers are represented with the following icon. Only active when spline ctrls are enabled. .. image:: img/PickerSpline_1.jpg .. image:: img/PickerSplineIcon.jpg **Joint** : represented with the following icon. .. image:: img/PickerJnt_Ctrls.jpg **Lattice Ctrls pickers** : The lattice pickers are represented with the following icon. Only active when lattice ctrls are enabled. .. image:: img/PickerLatticeIcon.jpg Useful buttons: ++++++++++++++++++++++++++ **IK/FK** Will switch selected chain from IK To FK mode and backwards. If *Match* checkbox is checked will also match chains pose. **Mirror** Will mirror selected controls to other side. If *Full Chain* Checkbox is active will mirror the full chain. If *Affect Children* Checkbox is active will mirror all childten chains as well. If you try to mirror center chain such as spine along with children chains, then side of the second controller in selection will tell script to which side to mirror. **Reset** Symply resets selected components to default state. Same rules as above apply, except for mirror side. **Symm** Makes pose symmetrical on selected components. Same rules as in mirror apply. **Space combo boxes** *pFollow...*, *rFollow...* change parent space of current controller. If *Match* checkbox is checked will also preserve position in world space. **Add space** If you dont have anough parent spaces on your controller you can add them by selecting a child object, then parent object and hitting that button. **Main** Toggles visibility of main controls. **scnd** Toggles visibility of secondary body controls(Spline, joint) **face** Toggles visibility on all face controls. **latt** Toggles lattice controls. **pxmt** Toggles proximity visibility mode on all controllers. **hide** Toggles hide on playback mode on all controllers. Split mesh buttons. If in your pipeline you need to split one mesh to multiple ones before exporting an animation, you can do that by using buttons on the right side.